package br.ufrn.sigtcc.util.specification.entidades;

import br.ufrn.sigtcc.model.entidades.Visitante;
import br.ufrn.sigtcc.util.specification.ISpecification;

public class VisitanteSpecification 
	implements ISpecification<Visitante> {  
	   
	  
	  public boolean isSatisfiedBy(Visitante visitante) {  
	         if(       
	        		 verifyEmpty(visitante) || verifyNull(visitante) ){  
	             return false;  
	         }  
	         return true;  
	     }
	     
	     private boolean verifyNull(Visitante visitante){
	    	 if(
	    			 visitante == null ||
	    			 visitante.getNome() == null ||
	    			 visitante.getCpf() == null ||
	    			 visitante.getSexo() == null ||
	    			 visitante.getDataNascimento() == null ||
	    			 visitante.getEmail() == null ||
	    			 visitante.getLogin() == null ||
	    			 visitante.getSenha() == null ||
	    			 visitante.getEscolaridade() == null ||
	    			 visitante.getMotivo() == null)
	    	 	{  
	    	         return false;  
	    	 	}  
	    	         return true;  
	     }
	     
	     private boolean verifyEmpty(Visitante visitante){
	    	 if(
	    			 visitante.getNome().equals("") ||
	    			 visitante.getCpf().equals("")||
	    			 visitante.getSexo().equals("") ||
	    			 visitante.getDataNascimento().equals("") ||
	    			 visitante.getEmail().equals("") ||
	    			 visitante.getLogin().equals("") ||
	    			 visitante.getSenha().equals("") ||
	    			 visitante.getEscolaridade().equals("") ||
	    			 visitante.getMotivo().equals(""))
	    	 	{  
	    	         return false;  
	    	 	}  
	    	         return true;  
	     }
}